Load balancers are commonly used in datacenters to spread the traffic load to a number of available computing resources that can handle a particular type of traffic. For instance, load balancers are topologically deployed at the edge of the network and between different types of VMs (e.g., between webservers and application servers, and between application servers and the database servers). The load balancers are in some deployments standalone machines (e.g., F5 machines) that perform load balancing functions. Also, in some deployments, the load balancers are service virtual machines (VMs) that execute on the same host computing devices that execute the different layers of servers that have their traffic balanced by the load balancers.
In many load balancer deployments, the load balancers serve as chokepoint locations in the network topology because they become network traffic bottlenecks as the traffic load increases. Also, these deployments do not seamlessly grow and shrink the number of the computing devices that receive the load balanced traffic, as the data traffic increases and decreases.